55c1b2819acd5487af5082a6340d5b8594724227,hazelcast/src/main/java/com/hazelcast/map/impl/tx/TransactionalMapProxy.java,TransactionalMapProxy,putIfAbsent,#Object#Object#,153
Before Change
if (wrapper.type != TxnValueWrapper.Type.REMOVED) {
return wrapper.value;
}
putInternal(mapServiceContext.toData(key, partitionStrategy), mapServiceContext.toData(value));
txMap.put(key, new TxnValueWrapper(value, TxnValueWrapper.Type.NEW));
return null;
} else {
Data oldValue
= putIfAbsentInternal(mapServiceContext.toData(key, partitionStrategy),
mapServiceContext.toData(value));
if (oldValue == null) {
txMap.put(key, new TxnValueWrapper(value, TxnValueWrapper.Type.NEW));
After Change
checkTransactionState();
MapService service = getService();
MapServiceContext mapServiceContext = service.getMapServiceContext();
Data keyData = mapServiceContext.toData(key, partitionStrategy);
TxnValueWrapper wrapper = txMap.get(keyData);
boolean haveTxnPast = wrapper != null;
if (haveTxnPast) {